package com.Algorithm.HUAWEI.three20220323;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: zjz
 * @Date: 2022/04/18/11:22
 * @Description:
 * @Target:
 */
public class 查找组成一个偶数最接近的两个素数 {
    /*
    * 描述
        任意一个偶数（大于2）都可以由2个素数组成，组成偶数的2个素数有很多种情况，本题目要求输出组成指定偶数的两个素数差值最小的素数对。

        数据范围：输入的数据满足 4≤n≤1000
        输入描述：
        输入一个大于2的偶数

        输出描述：
        从小到大输出两个素数

        示例1
        输入：
        20

        *
        输出：
        7
        13

        *
        示例2
        输入：
        4
        复制
        输出：
        2
        2

    *
    *
    * */


    public static void main(String[] args) {
        for (int i = 2; i < 101; i+=2) {
            System.out.println(i);
          process(i);
            System.out.println();
        }
    }




    static void process(int num){
        for (int i = (num+1)/2; i > 1; i--) {
            if (isSuShu(i)&&isSuShu(num-i)){
                System.out.println(i);
                System.out.println((num-i));
                break;
            }
        }
    }

    // 判定素数
    static boolean isSuShu(int num){

        if (num==0||num==1){
            return false;
        }
        for (int i = 2; i <= Math.sqrt(num); i++) {
            if (num%i==0){
                return false;
            }
        }


        return true;
    }

}
